﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200010B RID: 267
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class BattleRogueMagicInfo : IMessage<BattleRogueMagicInfo>, IMessage, IEquatable<BattleRogueMagicInfo>, IDeepCloneable<BattleRogueMagicInfo>, IBufferMessage
	{
		// Token: 0x17000397 RID: 919
		// (get) Token: 0x06000C32 RID: 3122 RVA: 0x000243E3 File Offset: 0x000225E3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<BattleRogueMagicInfo> Parser
		{
			get
			{
				return BattleRogueMagicInfo._parser;
			}
		}

		// Token: 0x17000398 RID: 920
		// (get) Token: 0x06000C33 RID: 3123 RVA: 0x000243EA File Offset: 0x000225EA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return BattleRogueMagicInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000399 RID: 921
		// (get) Token: 0x06000C34 RID: 3124 RVA: 0x000243FC File Offset: 0x000225FC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return BattleRogueMagicInfo.Descriptor;
			}
		}

		// Token: 0x06000C35 RID: 3125 RVA: 0x00024403 File Offset: 0x00022603
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicInfo()
		{
		}

		// Token: 0x06000C36 RID: 3126 RVA: 0x0002440C File Offset: 0x0002260C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicInfo(BattleRogueMagicInfo other) : this()
		{
			this.modifierContent_ = ((other.modifierContent_ != null) ? other.modifierContent_.Clone() : null);
			this.detailInfo_ = ((other.detailInfo_ != null) ? other.detailInfo_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06000C37 RID: 3127 RVA: 0x00024468 File Offset: 0x00022668
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicInfo Clone()
		{
			return new BattleRogueMagicInfo(this);
		}

		// Token: 0x1700039A RID: 922
		// (get) Token: 0x06000C38 RID: 3128 RVA: 0x00024470 File Offset: 0x00022670
		// (set) Token: 0x06000C39 RID: 3129 RVA: 0x00024478 File Offset: 0x00022678
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicModifierInfo ModifierContent
		{
			get
			{
				return this.modifierContent_;
			}
			set
			{
				this.modifierContent_ = value;
			}
		}

		// Token: 0x1700039B RID: 923
		// (get) Token: 0x06000C3A RID: 3130 RVA: 0x00024481 File Offset: 0x00022681
		// (set) Token: 0x06000C3B RID: 3131 RVA: 0x00024489 File Offset: 0x00022689
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public BattleRogueMagicDetailInfo DetailInfo
		{
			get
			{
				return this.detailInfo_;
			}
			set
			{
				this.detailInfo_ = value;
			}
		}

		// Token: 0x06000C3C RID: 3132 RVA: 0x00024492 File Offset: 0x00022692
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as BattleRogueMagicInfo);
		}

		// Token: 0x06000C3D RID: 3133 RVA: 0x000244A0 File Offset: 0x000226A0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(BattleRogueMagicInfo other)
		{
			return other != null && (other == this || (object.Equals(this.ModifierContent, other.ModifierContent) && object.Equals(this.DetailInfo, other.DetailInfo) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06000C3E RID: 3134 RVA: 0x000244F4 File Offset: 0x000226F4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.modifierContent_ != null)
			{
				num ^= this.ModifierContent.GetHashCode();
			}
			if (this.detailInfo_ != null)
			{
				num ^= this.DetailInfo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06000C3F RID: 3135 RVA: 0x00024546 File Offset: 0x00022746
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06000C40 RID: 3136 RVA: 0x0002454E File Offset: 0x0002274E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06000C41 RID: 3137 RVA: 0x00024558 File Offset: 0x00022758
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.modifierContent_ != null)
			{
				output.WriteRawTag(10);
				output.WriteMessage(this.ModifierContent);
			}
			if (this.detailInfo_ != null)
			{
				output.WriteRawTag(18);
				output.WriteMessage(this.DetailInfo);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06000C42 RID: 3138 RVA: 0x000245B4 File Offset: 0x000227B4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.modifierContent_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.ModifierContent);
			}
			if (this.detailInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.DetailInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06000C43 RID: 3139 RVA: 0x0002460C File Offset: 0x0002280C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(BattleRogueMagicInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.modifierContent_ != null)
			{
				if (this.modifierContent_ == null)
				{
					this.ModifierContent = new BattleRogueMagicModifierInfo();
				}
				this.ModifierContent.MergeFrom(other.ModifierContent);
			}
			if (other.detailInfo_ != null)
			{
				if (this.detailInfo_ == null)
				{
					this.DetailInfo = new BattleRogueMagicDetailInfo();
				}
				this.DetailInfo.MergeFrom(other.DetailInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06000C44 RID: 3140 RVA: 0x0002468C File Offset: 0x0002288C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06000C45 RID: 3141 RVA: 0x00024698 File Offset: 0x00022898
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 10U)
				{
					if (num != 18U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						if (this.detailInfo_ == null)
						{
							this.DetailInfo = new BattleRogueMagicDetailInfo();
						}
						input.ReadMessage(this.DetailInfo);
					}
				}
				else
				{
					if (this.modifierContent_ == null)
					{
						this.ModifierContent = new BattleRogueMagicModifierInfo();
					}
					input.ReadMessage(this.ModifierContent);
				}
			}
		}

		// Token: 0x0400050F RID: 1295
		private static readonly MessageParser<BattleRogueMagicInfo> _parser = new MessageParser<BattleRogueMagicInfo>(() => new BattleRogueMagicInfo());

		// Token: 0x04000510 RID: 1296
		private UnknownFieldSet _unknownFields;

		// Token: 0x04000511 RID: 1297
		public const int ModifierContentFieldNumber = 1;

		// Token: 0x04000512 RID: 1298
		private BattleRogueMagicModifierInfo modifierContent_;

		// Token: 0x04000513 RID: 1299
		public const int DetailInfoFieldNumber = 2;

		// Token: 0x04000514 RID: 1300
		private BattleRogueMagicDetailInfo detailInfo_;
	}
}
